.chart {
    position: relative;
    overflow: hidden;

    .axis line,
    path {
        stroke: #9c9c9c;
    }

    .grid line {
        stroke: #d8d8d8;
    }

    .axis text {
        font-weight: 600;
        fill: #9c9c9c;
    }

    .area {
        transition: fill-opacity 250ms linear,stroke-opacity 250ms linear;
        fill-opacity: .7;
        stroke-opacity: 0;

        &.hover {
            fill-opacity: .9;
        }
    }

    .line {
        fill: none;
        stroke-width: 2px;
    }

    .tooltip-undisplayed {
        display: none;
        top: 0;
        left: 0;
    }

    .tooltip-displayed {
        display: initial;
        opacity: .9;
    }

    .guide-line-undisplayed {
        display: none;
    }

    .guide-line-displayed {
        display: initial;
        stroke: #ffffff;
    }
}

#legend {
    width: 155px;
    margin: 20px 0;
    overflow: hidden;

    ul {
        margin: 0;

        > .legend-value {
            display: flex;
            align-items: center;
            margin-bottom: 10px;
            text-overflow: ellipsis;
            cursor: pointer;
            overflow: hidden;
            list-style-type: none;


            > .legend-value-color {
                min-width: 20px;
                height: 20px;
                min-height: 20px;
                margin: 0 8px 0 0;
                border-radius: 50%;
            }
        }
    }
}

#tooltip {
    position: absolute;
    padding: 1px;
    border: 1px solid rgba(0, 0, 0, .5);
    border-radius: 4px;
    background-color: #303030;
    color: #ffffff;
    font: 13px Arial;
    text-align: left;
    white-space: nowrap;
    user-select: none;

    > .tooltip-content {
        min-width: 160px;
        margin: 6px;

        > .row-date {
            font-size: 16px;
            font-weight: 600;
            text-align: center;
        }

        > .tooltip-content-row {
            display: flex;
            justify-content: space-between;
            padding: 5px;

            &.hover {
                background-color: #4d4d4d;
            }

            > .row-legend {
                width: 12px;
                height: 12px;
                margin: 0 5px 0 0;
                border-radius: 50%;
            }

            > .row-label {
                flex: 1 1 auto;
            }

            > .row-value {
                font-weight: 700;
                text-align: right;
            }

            > .row-total-label {
                font-weight: 700;
            }
        }
    }
}
